package com.apanal.qlife.sys.service;

import java.util.List;

import com.apanal.qlife.common.page.Page;
import com.apanal.qlife.common.page.PageReturn;
import com.apanal.qlife.sys.model.Dictionary;

/**
 * 数据字典服务层接口
 * 
 * @author shuliangxing
 * 
 * @date 2015-1-14上午11:33:49
 */
public interface DictionaryService {

	/**
	 * 根据id删除
	 * 
	 * @param id
	 * @return
	 */
	int deleteById(Long id);

	/**
	 * 新增
	 * 
	 * @param record
	 * @return
	 */
	int insert(Dictionary record);

	/**
	 * 非空字段新增
	 * 
	 * @param record
	 * @return
	 */
	int insertSelective(Dictionary record);

	/**
	 * 根据id查询
	 * 
	 * @param id
	 * @return
	 */
	Dictionary selectById(Long id);

	/**
	 * 非空字段更新
	 * 
	 * @param record
	 * @return
	 */
	int updateByIdSelective(Dictionary record);

	/**
	 * 更新
	 * 
	 * @param record
	 * @return
	 */
	int updateById(Dictionary record);

	// 分割线

	/**
	 * 查询所有
	 * 
	 * @return
	 */
	List<Dictionary> selectAll();

	/**
	 * 分页查询
	 * 
	 * @param entity
	 * @param page
	 * @return
	 */
	PageReturn<Dictionary> selectForPage(Dictionary entity, Page page);

	/**
	 * 启用/停用
	 * 
	 * @param Dictionary
	 * @return
	 */
	int updateToEnableOrDisable(Dictionary dictionary);

	/**
	 * 检测是否符合唯一索引
	 * 
	 * @param code
	 * @param type
	 * @param language
	 * @return true:符合 false:不符合
	 */
	boolean checkUniqueIndex(Long id, int code, String type, String language);
}
